Use of multiple embedded messages in program signal streams

ABSTRACT

Methods of generating video streams including advertisement information sufficient to support advertisement countdown times and other functions such as advertisement auto pause functions are described. In accordance with various embodiments, advertisement duration is determined from one or more messages included in a video stream, e.g., prior to the corresponding advertising segment. A countdown timer is generated from the advertisement information and displayed along with the content of the advertisement segment. Restrictions for different subscribers may be indicated in the advertisement information messages, e.g., with some end users being permitted to fast forward or skip advertisements with other users being required to allow the full normal playback of one or more advertisement segments. The auto pause function, when activated, pauses an ad segment or set of ad segments at a predetermined time before output of the main program resumes thereby making sure none of the main program is missed.

FIELD OF THE INVENTION

The invention relates to communications systems and methods, and moreparticularly, to a system and method using multiple embedded messages inprogram signal streams to support advertising related featuresincluding, e.g., an advertising countdown timer.

BACKGROUND OF THE INVENTION

Content distributors, including broadcasters, such as cable andsatellite companies are often confronted from a business perspectivebetween methods of generating revenue from ad based content in additionto, or as an alternative to, subscription based sources of revenue. Forexample, cable companies may generate revenue from cable servicesubscription fees with revenue from advertisements serving as anadditional income source.

Many subscription based broadcast content distribution services areprovided in combination with personal video recorders (PVRs), also knownas digital video recorders (DVRs), which allow for enhanced capabilitieswith regard to recording broadcast program content. The DVRs providesubscribers a great deal of flexibility with regard to recording programcontent and playback of the content. Some DVRs offer such functions as“one-touch programming” for automatically recording every episode of ashow for an entire season, “commercial advance” for automaticallyskipping through commercials while watching a recorded broadcast, an“on-screen guide” for looking up recorded programs to view, etc. ThePVRs may also suggest programs for recording based on a user's viewinghabit. These devices also enable the “pausing”, “rewinding” and“fast-forwarding” of a live television (“TV”) broadcast while it isbeing recorded. While the commercial skip function is attractive tosubscribers, it can adversely affect add revenue since advertisers getlittle or no benefit from a commercial which is skipped.

Conventional content distributors, e.g., broadcasters, are coming underincreasing competition from Internet based on-demand streaming services.Such services often provide video content on demand, e.g., by streamingshort clips, following presentation of a mandatory advertisement which aviewer is prevented from fast forwarding or skipping. Often users ofsuch services are not allowed to record program content for laterplayback and must watch the content in real time as it is streamed. Byminimizing the content storage in the player device, the contentdistributor is given a fair amount of control over the content and canlimit the supply of content so that the next segment of a program isonly supplied after display of an advertisement. In suchimplementations, the short video segments and advertisements are oftenstored as separate files. The video server in such a system streams theadvertisement stored in one file prior to the video clip stored inanother file. While a viewer is allowed to fast forward through thevideo clip, e.g., a portion of a television program or movie, the useris made to watch the advertisement at normal playback speed. A user maybe informed of the time remaining during the mandatory advertisement byway of a countdown time at the bottom of the screen during presentationof the mandatory advertisement. While the countdown timer normallyindicates the time to the end of the advertisement, there may bedownloading and/or streaming delays before the next video clip isactually presented. This is not normally an issue in the Internetstreaming case since the viewer is often not paying for the content andis accustomed to delays as different segments are downloaded. Themandatory advertisement serves as a revenue source from which theInternet based content provider can generate revenue by chargingadvertisers for the displayed advertisement. The video clip andadvertisement need not be kept to a particular broadcast schedule andthus can be of varying durations without affecting the encoding of thevideo clip. This is because the encoded video clip need not take intoconsideration or include information relating to an advertisement or itsduration which can be determined separately by the on-demand server.

While non-optional advertisements have not generated the level ofrevenues that many subscription services have been able to generate,advertisement funded content distribution approaches of various typesremain a source of competition with which more conventional broadcastcontent distribution services will have to contend with for theforeseeable future.

In view of the above discussion, it should be appreciated that there isa need for improved content distribution methods and/or content encodingapproaches which will allow content distributors such as cable andsatellite companies to optimize revenue generation from eitheradvertisements and/or subscription services. It would be desirable ifbroadcast content providers could provide content in such a manner thatcommercial countdown timers could be associated with and displayed withregard to some commercials. It would also be desirable if the contentdistributor could control whether commercial presentation was mandatoryand/or subject to user video control. It would also be desirable if acontent distributor could make the commercials mandatory for some usersbut optional for others in a manner that allows the content distributorto try and maximize revenue from advertisements and/or subscriptions.

SUMMARY OF THE INVENTION

Methods and apparatus for providing improved control to a broadcastcontent distributor over the display and presentation of advertisementsare described. Various embodiments also support the use and display ofan advertisement remaining time countdown timer alone or in combinationwith various user controls relating to skipping, pausing and/stopping apresentation prior to the end of an advertisement. Pausing may be inresponse to a signal from a user device indicating that the user wantsto enable an auto pause function and/or in response to detection of acondition or signal indicative of an event such as receipt of atelephone call, an E-mail, an alert, e.g., which may be signaled throughthe use of an EBIF signal and/or one or more other non-user controlledsignals.

In accordance with some embodiments messages are included in encodedvideo content. The messages are used to identify the start of anadvertisement segment and also the duration of the advertisementsegment. Such messages are referred to herein as advertising informationmessages. In addition to start and duration information, an advertisinginformation message may, and in some embodiments does, includeinformation on whether the viewing of all or a portion of theadvertisement segment is mandatory, optional, or mandatory for someviewers but not others. In the case where viewing of all or a portion ofthe advertising segment is mandatory for some viewers but not others,the message includes an identifier which can be used by the playbackdevice to identify viewers for which the viewing of the advertisingsegment is mandatory.

In some embodiments the advertisements messages are embedded intoencoded broadcast content at the time of encoding with the advertisementsegments being inserted later, e.g., by a local head end or, in someembodiments by the playback device used to playback the encoded content.

In some embodiments an advertisement segment itself may include multipleadvertising segments. In some embodiments an advertising informationmessage inserted into encoded content, prior to a contiguous block ofadvertising segments, includes information relating to each of theadvertising segments. In other embodiments a separate advertisinginformation message is included for each advertising segment even in thecase where the encoded content stream includes multiple consecutiveadvertising segments.

Playback devices including set top boxes (STBs), including for exampleSTBs with DVR capability, receive and process the encoded contentincluding the advertisement information messages. During playbackadvertising information messages are detected. The timing informationincluded therein is used to create an advertising countdown timer. Theadvertising countdown time displays, on a per segment basis, the timebefore the content of the program begins being displayed again asopposed to the advertisement content. For a set of contiguousadvertising segments the countdown time will show the time remaininguntil the end of the set of advertising segments and the resumption ofthe displaying of the main program. Thus, a user viewing the screenduring an advertisement is informed as to the amount of time remainingbefore the program content, as opposed to advertising content, will bedisplayed again.

Actions which a user viewing an advertisement segment may take aredetermined, in some embodiments, based on the advertisement informationincluded in the advertisement message preceding an advertisement segmentor segments and, optionally, subscriber information indicating the typeor level of subscription, if any, the user has.

The advertisement information may indicate that one or more messagesegments cannot be skipped. For such advertisement segments, the user isnot allowed to fast forward to skip the advertisement. Alternatively,the advertisement information may indicate that the user can skip somebut not all advertisement segments in a set of advertisement segments.For example, if a set of advertisement segments includes six 30 secondsegments, the advertisement information may indicate that the user canskip or fast forward through the first five segments but must view thelast 30 second segment at normal playback speed. Alternatively, a usermay be allowed to skip or fast forward through commercials which satisfysome other user and/or output related criteria. For example, theadvertising skip and fast forward restrictions may prevent a user fromskipping or fast forwarding through a commercial which has not alreadybeen presented, and thus viewed, at normal playback speed but allow theuser to skip or fast forward through commercials which he has viewed. Insome embodiments commercials which are presented at normal playback aretracked for a period of time, e.g., by maintaining a list of commercialswhich have been presented within a predetermined time in the STB memoryand/or in the network headend in the case of a network DVR embodiment,and the user is allowed to skip or fast forward through commercialswhich have already been presented at normal playback speed. The list ofcommercials which have been presented may include commercial identifierinformation, e.g., a PIC or other value corresponding to a particularcommercial segment, which can be used to distinguish between differentcommercials and thus allow the STB or network headend to determine if aparticular commercial segment has already been output for viewing withina predetermined time period. In still other embodiments, theadvertisement information may include information indicating that somesubscribers, e.g., paying service subscribers, can skip through some orall advertisement segments while other subscribers having a lower levelservice subscription or users who do not have any subscription arerequired to view the advertisement segments at normal playback speed. Insome embodiments, not only fast forwarding or skipping is restrictedduring an advertisement, switching to another channel may be restrictedfor the playback of the advertising segment.

In at least one embodiment in which DVR functionality is supported, acommercial pause feature is supported. In one such embodiment, a usercan select an auto pause feature during presentation of a commercial. Insome but not necessarily all embodiments automatic commercial or otherpresentation pausing is also triggered automatically by a signal orevent which is not initiated by a user and/or is not in response to asignal from a user device. For example in some embodiments in responseto detection of a condition or signal indicative of an event such asreceipt of a telephone call, an E-mail, and/or one or more othernon-user controlled signals indicative of a condition which is likely torequire a viewers attention and prevent the user from watching thepresentation. For example, in some embodiments when an incoming call isdetected, an E-mail is received or an alert is triggered, e.g., by anEBIF alert signal, presentation is automatically paused. Where acommercial is paused automatically in response to a signal which doesnot originate from a user control device, e.g., because of an incomingtelephone call, presentation of the commercial will resume from thepoint at which it is paused in response to the incoming call or otherevent, when a user sends a signal from a control device to resumeplayback.

In the case of the commercial auto pause feature triggered by a usersending a signal via a user control device, the commercial is paused ata particular point in time before the end of the commercial. While acommercial may be allowed to progress to such a point for pausestriggered by incoming calls or alerts before the pause goes into effect,this is not the case in at least some embodiments since the presentationof the commercial during a telephone call will normally be an unwanteddistraction from the call. Thus, at least in some embodiments,commercial and/or other presentations are immediately pausedautomatically in response to an incoming call, E-mail and/or alertsignal. In some embodiments a user may configure the STB and/or networkbased subscriber settings to indicate the point in time which acommercial is to be paused in response to a user initiated commercialauto pause. For example, some users may specify the pause occur 10seconds before the end of a commercial or commercial block while otherusers may specify 20 seconds before the end of the last commercial in acontiguous block of commercials. Users may also specify whetherautomatic pauses implemented in response to network signals are to beimmediately implemented in response to a network signal or are to occurat the predetermined point in time before the end of a commercialpresentation. User settings relating to auto pause functions may be, andin some embodiments are stored in the STB. In network based DVRembodiments such setting will normally be stored in the network headend.

When activated, the playback device, e.g., STB with DVR capability,pauses towards the end of playback of a commercial segment, e.g.,shortly before the regular program resumes. The pausing may be based onthe advertisement countdown time with the program pause beingautomatically enabled, e.g., 10 seconds prior to the resumption of themain program. As the pause is automatically activated the STB recordsand stores the program content. A user can resume playback by activatinga resume key or issuing another playback command. In this manner, bycombining the commercial countdown timer with auto pause functionality auser can leave the room during an advertisement segment without riskingmissing a portion of the program upon the user's return. For recordedcontent, an automatic commercial skip function can be implemented in asimilar manner with the skip operation being based on the advertisementsegment duration information included in the embedded advertisement'sinformation message or messages.

In some embodiments, pause and other features such as fast forward andcommercial skip are supported through the use of network based DVRfunctionality, e.g., here DVR functionality is supported in the cable ornetwork headend. In other embodiments the functions are supported insystems using tru2way enabled third-party TVs. In network based DVRembodiments, the storing and pausing are implemented in the networkheadend with commands being communicated from a user's set top box tothe cable network headend and the network headend modifying the videostream being provided to the user accordingly. Thus, in someembodiments, the autopause, commercial skip constraints, and otherfeatures of various embodiments are implemented via a network serveraltering the video content stream being supplied to a particular STB inaccordance with advertisement message information, user input and/oroptional restraints on a user to whom content is being supplied via anetwork and set top box.

The combination of advertisement message information, optionalrestraints on users to fast forward or skip advertisements, and abilityto allow different subscribers to be treated differently with regard toadvertisements based on their subscriptions, offers broadcasters a widerange of options in terms of their ability to maximize revenue fromadvertising, subscription fees and/or a combination of both. Theinclusion of advertisement segment duration information allows theimplementation of viewer friendly advertisement countdown times and theimplementation of automatic pause or advertisement skip functions whichare far more reliable than estimates of commercial duration based on anexpected commercial duration of 30 seconds or some other metric.

Accordingly, the methods and apparatus of the present invention offernumerous advantages to both broadcasters and viewers. Broadcasters canoptimize revenue generation based on the advertisement constraintscommunicated in the advertisement information messages of the presentinvention while viewers get enhanced functions and are providedadvertisement countdown information as well, at least in someembodiments, as auto pause or advanced commercial skip functions.

Numerous additional benefits, features and embodiments are discussed inthe detailed description which follows.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an exemplary broadband communicationssystem implemented in accordance with the present invention.

FIG. 2 a is an exemplary program stream, such as a video stream,including multiple main program segments, e.g. main program segments andad segments, and various information messages, e.g., advertisementinformation messages, in accordance with one exemplary embodiment.

FIG. 2 b shows another exemplary program stream, such as a video stream,including multiple main program segments, e.g. main program segments andad segments, and various information messages, e.g., advertisementinformation messages, in accordance with one exemplary embodiment butwith a set of advertisements segments and corresponding messagesoccurring together.

FIG. 3 is a block diagram of an example of an origination system of asource of programming of FIG. 1, for generating and transmitting videotransport streams including advertisement segments and advertisementinformation messages, in accordance with an embodiment of the invention.

FIG. 4 is a display illustrating a frame of an ad segment with an adsegment countdown timer which is generated, output and displayed inconjunction with the ad segment in accordance with one embodiment of thepresent invention.

FIG. 5, which comprises the combination of FIGS. 5A and 5B, is a flowchart illustrating the steps of an exemplary method of processing avideo stream in accordance with the present invention wherein anadvertisement countdown timer is generated and output for display alongwith a frame or frames of an ad segment.

FIG. 6 shows an exemplary set top terminal which provides digital videorecorder functionality in addition to advertisement countdown timerfunctionality in accordance with the invention.

DETAILED DESCRIPTION

With the advent of digital communications technology, many TV broadcaststreams are transmitted in digital formats. For example, DigitalSatellite System (DSS), Digital Broadcast Services (DBS), and AdvancedTelevision Standards Committee (ATSC) broadcast streams are digitallyformatted pursuant to the well known Moving Pictures Experts Group 2(MPEG-2) standard. The MPEG-2 standard specifies, among others, themethodologies for video and audio data compressions which allow multipleprograms, with different video and audio feeds, multiplexed in atransport stream traversing a single broadcast channel. Auxiliary data,including information messages, may be multiplexed into an MPEG-2 videostream. A set top box or other digital receiver may be used to decode anMPEG-2 encoded video stream, e.g., transport stream, and extract thedesired program segments and message information there from.

The fixed-size data packets in a transport stream each carry a packetidentifier (“PID”) code. Packets in the same elementary streams all havethe same PID, so that a decoder can select the elementary stream(s) itneeds and reject the remainder. Packet-continuity counts are implementedto ensure that every packet that is needed to decode a stream isreceived. Based on the PID information, a decoder can identify packetscorresponding to different program segments and messages. A PID tablemay be included in the video stream to provide information that can beused by the decoder to match packets based on the PIDs to different MPEGprogram streams. Different segments of a video stream may correspond todifferent program streams, e.g., a main program may be encodedseparately from an advertising segment and may be identified by adifferent PID than is used to identify packets corresponding to anadvertisement segment.

In the case of MPEG-2 streams, messages may be included in packetsincorporated into the video stream. For example, one or more advertisinginformation messages may be included in a video stream in accordancewith the invention, e.g., prior to an ad segment for which themessage(s) provide information. The advertising information messages maybe included as auxiliary data in the video stream before the ad segmentfor which the information message provides information. The advertisinginformation messages included in a video stream in accordance with theinvention can be detected and processed by a decoder. As will bediscussed below, the information provided in advertisement messagesincluded in a video broadcast stream can be used to supportadvertisement countdown timers in accordance with the invention.

While advertisement messages can be inserted as auxiliary data in MPEG-2streams, other methods of including advertisement information messagesare also contemplated and are used in various embodiments.

Alternatively, and/or in addition to MPEG-2 information messages, cuetones can and in some embodiments are used to communicate advertisementrelated information. Cue tones may, and in some embodiments are,inserted into analog program streams by content providers to indicateinsertion points for advertisements by cable systems and/or to provideadditional advertisement information. American National StandardANSI/SCTE 35 2001 (Formerly DVS 253), Digital Program Insertion CueingMessages for Cable (May 8, 2001) referred to herein as the DVS 253Standard, which is incorporated by reference herein, supports thesplicing of MPEG-2 digital streams for the insertion of advertising andother content including information messages. Splice information may beprovided in a splice information table associated with a particularprogram and/or in a cue message in the video stream. The spliceinformation table and cue messages may be sent one or multiple times.For example, a cue message used to provide advertising segment relatedinformation may be sent 8, 5, 4 and 2 seconds prior to the splice eventcorresponding to the advertisement segment to which the cue messagerelates. It should be appreciated that some exemplary Standards arenoted above to facilitate the understanding of the invention at least insome exemplary contexts. However, it should be appreciated that theinvention is not limited to the exemplary Standards mentioned herein andcan be used with a wide range of current and future Standards.

Unauthorized parties may intercept the splice information and/oradvertising information messages of the present invention and try to useit to avoid the viewing of advertising or for other commerciallydeleterious purposes. In some embodiments to avoid the unauthorizedalteration or use of such messages, the advertising information messagesand/or splice information is encrypted. The intended recipients, e.g.,trusted set top boxes, are provided with decoding information which isused to decode the encrypted advertisement information messages andoptionally determine if the messages have been altered. Encryption forsecurity purposes is optional and not used in all embodiments.

Prior to discussing these embodiments of the present invention, anexemplary communications system 10 which implements the invention willbe discussed.

FIG. 1 is a block diagram of components of an exemplary broadbandcommunications system 10 implemented in accordance with the presentinvention. The system includes one or more program sources 12, cablesystem 14 and a plurality of service area nodes 16-1 through 16-m in aneighborhood. Service area node 16-1, for example, is coupled to set-topterminals 18-1 through 18-n, at customer's TV's. Cable system 14delivers information and entertainment services to set-top terminals18-1 through 18-n.

Set top terminals 18-1, 18-2, 18-n may support DVR functionality and mayinclude a display device or are coupled to a display device used todisplay video content after decoding. The display device may, and insome embodiments does, display an ad segment countdown timer generatedin accordance with the present invention in conjunction with the displayof one or more frames of an ad segment.

Sources 12 create and broadcast programming to cable system 14 throughan origination system 20. Sources 12 include analog and digitalsatellite sources that typically provide the traditional forms oftelevision broadcast programs and information services. Sources 12 alsoinclude terrestrial broadcasters, such as broadcast networks (CBS, NBC,ABC, etc., for example), which typically transmit content from one:ground antenna to another ground antenna and/or via cable. Sources 12may also include application servers, which typically provide executablecode and data for application specific services such as databaseservices, network management services, transactional electronic commerceservices, system administration console services, application specificservices (such as stock ticker, sports ticker, weather and interactiveprogram guide data), resource management service, connection managementservices, subscriber care services, billing services, operation systemservices, and object management services; and media servers, whichprovide time-critical media assets such as Moving Pictures Experts Group2 (“MPEG-2”) standard encoded video and audio, MPEG-2 encoded stillimages, bit-mapped graphic images, PCM digital audio, three dimensionalgraphic objects, application programs, application data files, etc.Although specific examples of programs and services which may beprovided by the aforementioned sources are given herein, other programsand services may also be provided by these or other sources withoutdeparting from the spirit and scope of the invention. An example of anorigination system that inserts advertisement information messages usedto provide information relating to advertisements including durationrelated information, playback restrictions and/or viewing requirementinformation relating to different subscribers is shown in FIG. 3. Inaddition to the advertisement information messages, the originationsystem 20 may, and in some embodiments does, insert one or more adsegments corresponding to the advertisement information messages whichare inserted. Alternatively, the actual ad segments may be insertedlater, e.g., by a local headend or even DVR with stored ad segments,prior to presentation of the video stream to an output device such as adisplay.

Cable system 14 includes headend 22, which processes program materials,such as TV program streams, for example, from sources 12 in digital andanalog forms and may insert or replace ad segments for whichadvertisement information messages have been included in the videostream. Alternatively or in addition, the headend 22 may insertadditional advertisement messages and corresponding ad segments. DigitalTV streams may be formatted according to Motorola Digicipher System,Scientific Atlanta Powerview Systems, the Digital Satellite System(DSS), Digital Broadcast Services (DBS), or Advanced TelevisionStandards Committee (ATSC) standards, for example. Analog TV programstreams may be formatted according to the National Television StandardsCommittee (NTSC) or Phase Alternating Line (PAL) broadcast standard.Headend 22 extracts program content in the analog and digital TV streamsand reformats the content to form one or more MPEG-2 encoded transportstreams for transmission to users at set-top terminals 18-1 through18-n. Such reformatting may be applied to those received streams alreadyin an MPEG-2 format. This stems from the fact that the digital contentin the received MPEG-2 streams are typically encoded at a variable bitrate (VBR). To avoid data burstiness, headend 22 may re-encode suchdigital content at a constant bit rate (CBR) to form transport streamsin a conventional manner.

The generated video streams including various broadcast program and adcontent maybe, e.g., MPEG transport streams, and are typicallytransmitted from headend 22 to hub 24 via Internet Protocol (“IP”)transport over optical fiber. Video streams as used herein is intendedto refer to streams which include video, audio and related informationand are used to convey video program content. Accordingly, a videostream as used here is not limited purely to a stream communicating onlyvideo data. The video streams may also be, or alternatively be,transmitted as intermediate frequency signals that have been amplitudemodulated (“AM”) or as a digital video broadcast (DYB) using asynchronous serial interface (ASI) that has also been AM modulated. Hub24 includes modulator bank 26, among other components. Modulator bank 26includes multiple modulators, each of which is used to modulate videostreams onto different carriers. Hub 24 is connected to hybridfiber/coax (HFC) cable network 28, which is connected to service areanodes 16-1 through 16-m. The video streams may be recorded in headend 22so that the users at the set-top terminals may manipulate (e.g., pause,fast-forward or rewind) the programming content in the recorded streamsin a manner described in U.S. patent application Ser. No. 10/263,015,filed Oct. 2, 2002, for example, which is incorporated by referenceherein. In addition, in accordance with an embodiment of the invention,the video signal streams are processed and stored by headend 22 based,at least in part, on the advertisement information messages, asdescribed further below.

FIG. 2 a is a schematic representation of a portion of a signal stream200, e.g. a video stream communicating main program content 202, 212,216, e.g., TV program content, advertisement (AD) content in the form ofa segment 214 and various messages 204, 206, 208, segmented withsegmentation messages in addition to PIC (Program Identification Code)information 210. Program stream 200 includes main program content whichcorresponds to, e.g., one or more broadcast TV programs. The mainprogram content is transmitted in multiple segments 202, 212, 216 whichcan be decoded and displayed. Between main program segments variousmessages, information and ad segments are included in the video stream200 in accordance with the invention. For example an ad segment starttime message 204 is included following main program content segment 202.Message 204 indicates the display start time, e.g., presentation starttime, within the video stream of subsequent ad segment 214. Durationand/or end time of ad segment message 206 follows message 204 andincludes duration ad segment information and/or the presentation endtime of the subsequent ad segment 214. From the combination of messages204 and 206 it is possible to determine the presentation start time andpresentation duration of the subsequent ad segment 214 to whichadvertisement information messages 204, 206 relate. In addition toadvertisement information messages 204, 206, ad video requirementsinformation message 208 may, and in some embodiments is, included in thevideo stream 200. Video requirements information message 208 indicateswhether or not users are permitted to skip or fast forward through adsegment 214. For example, ad viewing requirements information mayindicate that ad segment 214 cannot be fast forwarded or skipped and isrequired to be output at a normal playback rate for its full duration.In such a case the ad segment 214 will be output at normal playback ratebefore a viewer is allowed to resume viewing of the main programcontent, e.g., content found in segment 216. In other cases, the adviewing requirement information message may provide fast forwarding andskipping restrictions which are selective in nature, e.g., which applyto non-paying viewers but not to paying service subscribers. In suchcases information message 208 may include information used todistinguish between service subscribers permitted to skip or fastforward through the associated ad segment 214 and users who are notpermitted to skip or fast forward through the ad segment(S). Suchinformation may be subscription identification information, e.g., aservice plan, subscription level or some other numeric identifier whichcan be used by a receiving device such as a set top box, e.g., incombination with stored subscription and/or service plan information inthe STB, to determine whether or not a user is permitted to fast forwardor skip ad segment 214. PIC information 210 provides programidentification information used to identify packets corresponding to thead segment 214 and distinguish them from packets corresponding to themain program content which is identified using one or more other PICvalues then are used for the ad segment 214 Note that the ad informationmessages 204, 206, 208 and related PIC information 210 precede theassociated ad segment but are separated from the actual ad segmentcontent 214 by some main program content 212. This allows a decoder toreceive and process the ad segment information a short time before,e.g., 8, 10 or some other number of seconds before, the receipt of theactual ad segment. While a single set of messages 204, 206, 208 and PICinformation 210 is shown, the set of information can, and in someembodiments is, repeated two or more times in video stream 200 prior tothe occurrence of ad content 214 so that the chance of it beingoverlooked or lost due to a communication error is minimized.

FIG. 2B illustrates a portion 201 of an exemplary video content stream.The video content stream 201 includes many messages of the typepreviously described with regard to FIG. 2A and which are identifiedusing the same reference numbers for the same or similar messages aswere used in FIG. 2A. Note, however, that FIG. 2B illustrates an examplewhere multiple ad segments and associated message occur consecutively asmay be the case where multiple ads, e.g., 30 second commercials, are tobe presented consecutively. Reference number 222 is used to indicate ofset of contiguous ad segments and associated advertisement informationmessages. Primes are used to identify messages corresponding to adsegment N which are similar to those which correspond to ad segment 1.Restrictions on fast forwarding and/or skipping of ad segments isprovided in the FIG. 2B example on an individual ad segment basis. Insome embodiments different restrictions are provided for different adsegments. For example, the provided restriction information may indicatethat the last ad segment cannot be skipped or fast forwarded through byany subscriber while the other ad segments can be skipped by selectedsubscribers. In some embodiments the broadcaster charges a premium feeto advertisers for the ad segments which cannot be skipped or fastforwarded through by any subscribers and a lower fee for ad segmentssubject to skipping or fast forwarding by some or all subscribers/users.

Note that in the FIG. 2 example, the video content stream includes an adset information message 221 not shown in FIG. 2A. The ad set informationmessage 221 provides information on the set of contiguous ad segments222, e.g., indicating the total duration and, in some cases presentationstart time of the first ad in ad segment set 222. While this informationcould be generated by a STB from the individual ad information messages,providing the cumulative ad segment duration information allows a STB toeasily generate a countdown timer of the set of ad segments 222. Thus,in accordance with the invention a STB receiving video stream 201 cangenerate and output a cumulative ad countdown timer and or and/orindividual ad segment count down timers.

The cumulative duration information provided in message 221 alsofacilitates implementation of the auto pause feature of the presentinvention. In the case of consecutive ad segments, the auto pausefunction implements a pause at a predetermined time prior to the end ofthe last ad segment in the set of consecutive ad segments. Thus, basedon the start presentation time used to control the output of the firstad segment 214 and the duration of the set of ad segments 222, asdetermined from individual messages or ad set information message 221,the time at which a pause is to be automatically started duringoutputting of the ad set 222 can, and is, easily determined.

Having briefly described the structure and content of video streams 200,201, an origination system which can, and in some embodiments does,generate such streams is discussed with regard to FIG. 3.

FIG. 3 is a block diagram of an example of an origination system 20 of asource 12 for uplinking video program transport signal streams, e.g.,video content streams, with ad information messages in accordance withan embodiment of the invention. Origination system 13 comprisesautomation system 52, which controls operation of system 13.Segmentation points and corresponding main program and add segments of abroadcast video content stream may be identified by an operator throughautomation system 52. Video sources 54, such as Video Source 1, VideoSource 2 and Video Source 3, are coupled to automation system 52 throughdata bus 57. Video sources 54 provide program signal streams includingmain program content and/or ad segment content to be segmented. Clocksource 56 is also coupled to data bus 57, to provide timing for system13. Encoder 58, in the example, is a real time encoder coupled to videosources 54 to receive and encode the analog video streams into an MPEG-2program transport stream, for example. Network controller 60 is acontrol and management interface to encoder 58 and an interface toautomation system 52 for insertion of segmentation messages. Transmitter62, such as a satellite dish, is coupled to encoder 60. Transmitter 62acts as an interface to transmit the program signal transport stream. AnMPEG multiplexor (not shown) capable of extracting the program clockreference from the program stream may be used instead of or in additionto encoder 58. One or more previously recorded sources of video may besupplied to encoder 58 and/or multiplexed into the transport streamgenerated by encoder 58. While a real time encoder is shown, a non-realtime encoder is used in some embodiments.

While the video content is supplied to encoder 58 from various sources54, ad information messages of the type shown in FIGS. 2A and 2B aregenerated by the automation system 52 and supplied via networkcontroller 60 to the encoder 58 for inclusion in the generated contentstream prior to the ad content obtained from ad content source 3. Adcontent source 3 may be a store of previously recorded ad segments whichare output under control of the automation system 52 to the encoder 58for inclusion in the content stream being generated by encoder 58.

FIG. 4 shows an exemplary display image 400 generated, outputted anddisplayed during an ad segment of broadcast program in accordance withone exemplary embodiment. The display image includes a frame 401 of anad segment along with an information section 402 displayed at the bottomof the image 400. As illustrated the information section 402 includes anad presentation countdown timer 406 generated in accordance with theinvention in addition to a channel and current time field 404. The adpresentation countdown timer 406 displays the presentation timeremaining in a set of consecutive ad segments or the time remaining inan individual ad segment depending on the embodiment. As should beappreciated in either embodiment during presentation of the last adsegment, e.g., ad segment N 214′, in a set of consecutive ad segmentsthe time remaining will be the time to the end of the last ad segment214′.

As noted above, when the ad auto pause feature is activated duringpresentation of a set of ad segments the pause operation willautomatically occur when the time remaining counter shown in image area406 reaches a predetermined time, e.g., 8 seconds. Thus, thepresentation will be paused when auto pause is enabled, the programstored, and the viewer will be allowed to resume normal playback fromthe point the presentation was paused without missing any of the mainprogram content. Thus a viewer with the auto commercial pause featurecan get up, leave the room and return without having to worry aboutmaking it back in time before the broadcast of the main program contentresumes. This feature is particularly useful during real time broadcastsof sporting events where a snack or rest room break may be desired.

One exemplary method of the present invention, relating to processing ofan video content stream and messages implemented in accordance with thepresent invention, such as those shown in FIG. 2, will now be discussedin detail with reference to FIG. 5 which comprises the combination ofFIG. 5A and FIG. 5B.

The method 500 starts in step 502 with a receiver, e.g., STB with DVRcapability, being powered on. Operation proceeds from start step 502 tostep 504 wherein the STB receives a video content stream, e.g.,broadcast program stream, including main program content, advertisementrelated information messages and one or more advertisement segments.Operation proceeds from step 504 to step 506, on an ongoing basis assegments, messages and other information of the video stream arereceived and processed.

In step 506 a determination is made if main program content was receivedand, if it was, operation proceeds to step 508 where the main programcontent is decoded and output for display. If something other than mainprogram content was received, operation proceeds to step 510 wherein thereceived data is checked to see if it is an ad message or messages. Ifit is not an ad message the data is processed in the normal manner. Ifthe data is an ad information message or message(s) operation proceedsto step 512 wherein the duration of an ad segment and/or set ofconsecutive received ad segments is determined. Then in step 514 adsegment playback restrictions are determined. Thus in step 514 whatrestrictions are applicable to the playback modification such as fastforwarding and skipping of the received ad segment(s) is determined frominformation included in one or more received ad information messages.Step 514 may include identifying step 516 of identifying ad segment(s)subject to mandatory normal speed playback, if any, and step 518 ofdetermining what restrictions on fast forwarding and/or ad skipping areapplicable and to what devices, subscribers or subscriptions therestrictions apply. This may, and in various embodiments is, determinedfrom playback restriction information included in one or more adinformation messages associated with a subsequent ad segment or segmentsto be decoded and presented.

Operation proceeds from step 514 to step 520 wherein the ad segment orsegments to which steps 512 and 514 relate, are decoded. Operationproceeds from step 520 to step 522. In step 522 an ad segment countdowntimer is generated based on the determined duration of the ad segment orset of consecutive ad segments. Then in step 524, the ad segment isoutput for display with the generated ad segment countdown timer. Thedisplayed timer is updated with the output of consecutive decoded framesof the ad segment so that as each image of the ad is displayed thecountdown timer information remains accurate. As shown in FIG. 4,channel and other information, e.g., current time information, may bedisplayed in addition to a frame of an ad segment.

As images from the ad segment are being displayed along with the adsegment countdown timer of the present invention, the receiver devicemonitors for input from a user control device, e.g., a remote control.This occurs in step 528. If user input is detected in step 528 operationproceeds via connecting node 530 to step 532. In step 532 the inputsignal is checked to determine if the user input is an auto commercialpause signal used to activate the auto commercial pause feature of thepresent invention. If the input is an auto commercial pause signal,operation proceeds from step 532 to step 546. In step 546, the output ofthe ad segment(s) is paused at a predetermined point in time e.g., apredetermined number of seconds prior to the end of a commercial segmentor the set of commercial segments or at the end of the last ad segmentin a set of commercial segments. With the pause operation having beenautomatically activated in step 546, e.g., based on the time of the adsegment countdown timer, operation proceeds to step 548 wherein receivedvideo stream content is stored, e.g., up until the main program ends orplay is resumed in response to a user input.

Operation proceeds from step 548 to step 550. In step 550 the STBmonitors for user input, e.g., input from a user control device used toresume playback. In step 552 if a command is detected, operationproceeds to step 554 in which output of decoded content is resumed fromthe point where the output was paused. Otherwise, if no command isdetected in step 552 storage of the broadcast program will continue asindicated by the arrow proceeding from step 552 to step 548 until thepoint where a command is detected or the program ends.

If in step 532 it was determined that the received signal from the usercontrol device was not an auto commercial pause signal, operationproceeds from step 532 to step 538 wherein a check is made to determineif the received signal is a skip or fast forward command. If the commandis not a skip or fast forward command, e.g., a mute or other volumecontrol command, the command is implemented by the STB in step 539.However, if the command is a skip or fast forward command, operationproceeds from step 538 to step 540. In step 540 a determination is madeif the user of the playback device is authorized to skip or fast forwardthrough the ad segment being presented. This determination is made basedon the fast forwarding and/or skip ad restriction information, if any,included in ad information message corresponding to the ad or adsegments being output. As discussed above, the determination may be madeby the STB based on subscription information, service level information,user identification information and/or other information known or storedin the STB which can be compared to received restriction information ifany. Thus, the STB serves as an ad output policy enforcement point.Since many STBs and/or the software used by the receiver is provided orcontrolled by the broadcaster, e.g., cable company, the STB is areasonably trustworthy device in most, if not all, cases.

If the user is authorized to fast forward or skip the ad segment(s)being output operation proceeds from step 540 to step 542 wherein thereceived skip or fast forward command is implemented. However, if theuser of the playback device is not authorized to skip or fast forwardthrough the ad segment(s) operation proceeds to step 544 wherein the adsegment and countdown timer continue to be output at the normal playbackrate.

It should be appreciated that the above processing is exemplary and thesequence of steps may depend in a particular embodiment on the order inwhich messages, segments and commands from a user control device arereceived. Accordingly, the sequence of steps is not intended to berepresentative of the only order in which the steps may be performed.

FIG. 6 illustrates an exemplary receiver device, e.g., set top box 600,which is coupled to a display device 604. As should be appreciated thedisplay device 604 may be integrated into the STB 600 or coupled theretoas in the case of a separate display device, e.g., Television. The STBincludes an I/O interface 602 coupled to a communications network via aconnection 650, e.g., a cable or fiber connection. The interface 602 mayreceiver a video content stream such as that shown in FIGS. 2A and/or2B. The I/O interface 602 is coupled to a processor 606, a coder/decoder(CODEC) 608 and a memory 612 via a bus 610. Decoded video including adsegments including an ad countdown timer in accordance with the presentinvention can be supplied, e.g., output, for display to display device604 via I/O interface 602. The memory 612 includes various modulesincluding instructions, each of which when executed by the processor 606control the set top box 600 to implement the step of FIG. 5corresponding to the like named module of FIG. 6. For example, thememory which is a non-transitory computer readable medium includes auser input/command detection module 614, an input signal type detectionmodule 616, an ad duration determination module 620, an ad messagesdetermination module 618, a signal/command implementation control module622, an ad segment playback restrictions determination module 624, atuner module 626, an ad segment countdown timer generation module 628, amain program content/ad segment presentation module 630, and userauthorization determination module 632. The memory 612 also includesvarious operating system and control routines 634 used to control theSTB 600 and decoded main program content 638 generated by decoding oneor more main program segments. The STB also includes stored broadcastvideo stream content 640, e.g., content stored following the autopausing of the STB 600 during an ad segment or set of ad segments. Alsoincluded in memory 612 are configuration/user information 642 andnetwork resource information 644. Configuration/user information mayinclude various STB 600 setting as well as information about the servicelevel of the user to whom the STB 600 corresponds, the subscription planto which the STB 600 corresponds and/or a user identifier. Thisinformation may be used in determining whether or not a user has theright to fast forward or skip an ad segment. The network resourceinformation 644 may include information about the network to which theSTB 600 is connected, encryption information and or other networkcommunications related information.

While described in the exemplary context of pause and other playbackcontrol functions being implemented in a STB, it should be appreciatedthat the methods and apparatus described in the present application arewell suited for, and applicable to, network based PVR implementation aswell.

The systems disclosed herein are in a form in which various functionsare performed by discrete functional blocks. However, any one or more ofthese functions could equally well be embodied in an arrangement inwhich the functions of any one or more of those blocks or indeed, all ofthe functions thereof, are realized, for example, by one or moreappropriately programmed processors. While described in the context of avideo delivery system, it should be appreciated that the methods andapparatus of the present invention are not limited to the delivery ofvideo content and can be used to support delivery of audio contentand/or other types of information content which may be subject toregional blackouts and/or other delivery restrictions.

In various embodiments system elements described herein are implementedusing one or more modules which are used to perform the stepscorresponding to one or more methods of the present invention. Each stepmay be performed by one or more different software instructions executedby a computer processor, e.g., a central processing unit (CPU) such asprocessor 306.

At least one system implemented in accordance with the present inventionincludes individual means for implementing each of the various stepswhich are part of the methods of the present invention. Each means maybe, e.g., an instruction, processor, hardware circuit and/or combinationof such elements used to implement a described step.

The commands described herein are often buffered and/or stored inmemory. Accordingly some embodiments are directed to a machine readablemedium including the commands discussed herein being stored on anon-transitory machine readable medium. Many of the above describedmethods or method steps can be implemented using machine, e.g.,computer, executable instructions, such as software, included in amachine, e.g., computer, readable medium used to control a machine,e.g., general purpose computer with or without additional hardware, toimplement all or portions of the above described methods, e.g., in oneor more nodes. The machine readable medium may be, e.g., computerreadable medium such as a memory device, e.g., RAM, floppy disk, etc.Accordingly, among other things, the present invention is directed to amachine-readable medium including machine executable instructions forcausing a machine, e.g., processor and associated hardware, to performone or more of the steps of the above-described method(s).

Numerous additional embodiments, within the scope of the presentinvention, will be apparent to those of ordinary skill in the art inview of the above description and the claims which follow.

The foregoing merely illustrates the principles of the invention. Itwill thus be appreciated that those skilled in the art will be able todevise numerous other arrangements which embody the principles of theinvention and thus within the spirit and scope of the invention, whichis defined in the claims, below.

What is claimed is:
 1. A content playback method, the method comprising:determining an end time of an advertisement segment; receiving anautomatic commercial pause signal from a user control device; and inresponse to said automatic commercial pause signal, pausing output ofsaid advertisement segment at a predetermined point prior to the end ofsaid advertisement segment, said predetermined point being apredetermined number of seconds before the end of said advertisementsegment.
 2. The content playback method of claim 1, further comprising:storing broadcast encoded video stream content corresponding to a firstbroadcast encoded video stream following said predetermined point insaid advertisement segment; and in response to a command from said usercontrol device received while said output of said advertisement segmentwas paused, outputting stored program content corresponding to saidfirst broadcast encoded video stream.
 3. The content playback method ofclaim 1, further comprising: receiving a signal indicating one of anincoming telephone call, alert and incoming E-mail; and in response tosaid signal, automatically pausing output of said advertisement segment.4. The content playback method of claim 3, wherein said advertisementsegment is immediately paused in response to said received signal. 5.The content playback method of claim 1, further comprising: monitoringfor a presentation control signal while said advertisement segment isbeing output; and determining if the user is authorized to skip or fastforward through said advertisement segment in response to detecting,while said advertisement segment is being output, input from a usercontrol device indicating a skip or fast forward command.
 6. The contentplayback method of claim 5, wherein determining if the user isauthorized to skip or fast forward through said advertisement segmentincludes checking to determine if the advertisement segment being outputwas previously output within a predetermined time of said detected inputfrom a user control device indicating a skip or fast forward command. 7.The content playback method of claim 5, wherein determining if the useris authorized to skip or fast forward through said advertisement segmentincludes checking advertisement presentation restriction informationincluded in an advertisement information message which is associatedwith said advertisement segment.
 8. The content playback method of claim5, wherein determining if the user is authorized to skip or fast forwardthrough said advertisement segment includes comparing subscriptioninformation corresponding to said user to information in saidadvertisement segment used to identify subscribers who are authorized toskip or fast forward through said advertisement segment.
 9. The methodof claim 1, wherein pausing output of said advertisement segment at apredetermined point prior to the end of said advertisement segmentincludes: automatically pausing the output based on a time of anadvertisement segment countdown timer.
 10. The method of claim 9,wherein the time of said advertisement segment countdown timer is basedon when the advertisement segment ends.
 11. The method of claim 1,further comprising: generating a countdown timer indicating a timeremaining until the end of the advertisement segment; and prior toreaching said predetermined point, outputting said advertisement segmentfor display at a normal playback rate with an indicator indicating thetime remaining until the end of the advertisement segment.
 12. Themethod of claim 11, further comprising: storing user setting informationindicating if a commercial advertisement segment being output should beimmediately paused in response to a network signal or paused at saidpredetermined point prior to the end of the said advertisement segment.13. The method of claim 12, wherein said network signal is one of anE-mail signal, telephone call signal or an alert signal.
 14. The methodof claim 1, wherein said user control device is a remote control.
 15. Acontent playback device, comprising: a duration determination module fordetermining the duration of an advertisement segment from one or moremessages included in a first broadcast encoded video stream prior to anadvertisement segment; a countdown generator module for generating acountdown timer indicating a time remaining until the end of theadvertisement segment; an output module for outputting saidadvertisement segment for display at a normal playback rate with anindicator indicating the time remaining until the end of theadvertisement segment; a receiver for receiving an automatic commercialpause signal from a user control device; and an auto pause moduleresponsive to the automatic commercial pause signal for pausing outputof said advertisement segment at a predetermined point prior to the endof said advertisement segment, said predetermined point being apredetermined number of seconds before the end of said advertisementsegment.
 16. The content playback device of claim 15, wherein saidduration determination module determines the duration from start and endtimes of said advertisement segment.
 17. The content playback device ofclaim 15, wherein said user control device is a remote control.
 18. Acontent playback device, comprising: a duration determination module fordetermining the duration of an advertisement segment from one or moremessages included in a first broadcast encoded video stream prior to anadvertisement segment; a countdown generator module for generating acountdown timer indicating a time remaining until the end of theadvertisement segment; an output module for outputting saidadvertisement segment for display at a normal playback rate with anindicator indicating the time remaining until the end of theadvertisement segment; a receiver for receiving an automatic commercialpause signal from a user control device; and an auto pause moduleresponsive to the automatic commercial pause signal for pausing outputof said advertisement segment at a predetermined point prior to the endof said advertisement segment, wherein said predetermined point prior tothe end of said advertisement segment is a number of seconds specifiedby a user setting.
 19. The content playback device of claim 18, whereinsaid predetermined point is a predetermined number of seconds before theend of said advertisement segment.
 20. A content playback method, themethod comprising: determining an end time of an advertisement segment;receiving an automatic commercial pause signal from a user controldevice; and in response to said automatic commercial pause signal,pausing at a content playback device, output of said advertisementsegment at a predetermined point prior to the end of said advertisementsegment, said predetermined point being a predetermined number ofseconds before the end of said advertisement segment, wherein saidpredetermined number of seconds is specified by a user of said contentplayback device.
 21. The method of claim 20, further comprising: storingin said content playback device user setting information indicating thepredetermined number of seconds specified by said user.